This invention relates to servers comprising computer processor systems, such as in a distributed or network systems environment, and, more particularly, to the management of the server and the distribution of events occurring with respect to the server.
The distributed or network environment of computer processor systems typically comprises a large number of individual nodes, such as workstations, PC""s, terminals, host computers, and data storage components, which are tied together across a network. Also typically, the distributed or network systems comprise remotely located clients tied together to utilize common data storage components. The management of the data for efficient storage and retrieval is a critical element of the operation of the network.
One type of network is that employed to provide a backup and archive storage system for remotely located clients. Backup protects the client system data from a system failure or disk crash. The data is typically first moved to disk drives and then migrated to tape as the need for access to the data becomes less immediate. Archive storage is data that won""t usually have a copy in the originating client system. It is archived so that the data may be made available if it is ever needed, for example, for legal requirements. Data is typically archived on tape.
Before the advent of modern data management systems, the client kept the only log of events related to the backup or archived data, and that log was only viewable from the client workstation. Should some kind of error situation arise, there was no visibility of the error to the data storage system administrators because the error log was also only on the client machine.
Another major function of the network storage server is space management. The data storage capacity of the client system is limited, and the network storage server may migrate the client user""s live data to a server to free up space on the client system until a particular file is needed. At that point, the file is recalled from the server back to the client system.
One system designed to store and manage data for remotely located clients is called the ADSTAR Distributed Storage Manager (ADSM) of IBM. In ADSM, a central server is coupled to multiple client platforms and one or more administrators. The server provides archival, backup, retrieval, and other management functions for the server""s clients. Should an error situation arise, that message may be provided to the server system administrator as an xe2x80x9ceventxe2x80x9d or an xe2x80x9calertxe2x80x9d. In server system parlance, an xe2x80x9ceventxe2x80x9d is any message relating to the server system, including those messages, called xe2x80x9calertsxe2x80x9d, which require attention.
The number of networked clients is high and the mix of clients tends to change often. Additionally, the clients tend to have wide varieties of application programs with differing data storage needs. Thus, the server needs to have flexibility to allow changes to be made within the system without disrupting the operation of the system. U.S. Pat. No. 5,621,892, Cook, addresses this problem by having registration procedures for the registration of devices and of expected alerts and configures a map between registered alerts and registered service providers for the distribution of events when they occur. The registration and mapping occurs at a standard initial set up for the system.
With the number of client nodes now sometimes reaching 1,000 or higher, and a map of 1,000 events with respect to several receivers for a single client consuming over 1,000 bytes of memory, the total logging map would consume over 1,000,000 bytes of memory alone. It would be helpful if the memory usage could be reduced.
The high number of client nodes prevents the administrator from monitoring all of the clients individually. Thus, in the system of Cook, all the registered alerts of particular types are sent to particular receivers as selected at the registration, and not all events are sent to the administrator. However, the administrator would prefer to select and tailor the events that are to be monitored, and tailor the logging and display of the selected events at various receivers, such as a server console, an activity log, a SNMP management program, or an enterprise system management application, such as Tivoli Enterprise Console (TEC). Additionally, the administrator would prefer not to wait until an initialization of the server to update the system logging.
Further, a limitation on the prior art is the inability to easily specifically map and remap each individual client node into the system logging map, so as to distribute only the desired specific types of events or from specific types of client nodes to specific receivers.
It is an object of the present invention to allow specific tailoring of the distribution of events by the administrator, and to allow updating of the mapping of the distribution of events to client nodes during operation of the distributed network system, without waiting for an initialization.
It is another object of the present invention to provide distribution of events while allowing efficient use of the server memory.
It is still another object of the present invention to allow ease of distributing specific types of events to specific receivers, or specific events for groups of client nodes to specific receivers.
Disclosed is a server having a plurality of clients coupled to the server at client nodes, and coupled to a plurality of receivers. Events, which may range from a successful completion message to a major error alert, may be generated relating to the client nodes. A method is disclosed for dynamically selectively distributing the client node events to particular ones of the receivers, in response to commands selectively enabling/disabling the client events to each receiver, while maintaining only the presently needed mapping in the server memory. The method comprises: upon opening a session of a client node, the selectively enabled events/receivers relating to the client node are determined from a database and placed in a client vector, preferably in memory. Upon the selective enabling/disabling occurring during the session of the client node, the determined selectively enabled events/receivers relating to the client node are dynamically updated, both in the database and, as needed, in the client vectors. Then, upon occurrence of an event relating to a client node, the event is distributed to ones of the receivers having been selectively enabled for the event in the determining and the dynamically updating steps. The client vectors may comprise two dimensional bit vectors identifying the enabled/disabled events/receivers for the client nodes.
Thus, the distribution of events may be continually updated during the operation of the server and the network system.
Additionally, the distribution rules are stored in a database, for example, on one or more disk drives, and only the distribution for the connected client nodes are stored in the client vector in the server memory.
In another aspect of the present invention, the step of storing rules in the database additionally comprises storing class vectors for selectively enabling classes of events to ones of the receivers. The determining step additionally comprises reading the database class vectors for selectively enabling/disabling the events for the receivers. Thus, the administrator may command distribution of classes of events, such as major errors, without identifying each of the events.
In still another aspect of the present invention, wild cards are used to collectively enable/disable client events for groups of clients to ones of the receivers. The determining and the updating steps thereupon additionally enable/disable the client events for the connected client nodes that are in the selected groups of clients. Thus, the administrator may command distribution of events relating to specific client nodes, such as major host systems to ones of the receivers.
For a fuller understanding of the present invention, reference should be made to the following detailed description taken in conjunction with the accompanying drawings.